/*
 * @Description:预加载脚本，可以使用部分的node.js模块功能，同时又可以操作dom
 * @Date: 2024-02-01 09:43:37
 * @FilePath: \hksj-vued:\12electron\electron-demo\src\preload\index.ts
 */
import { contextBridge } from 'electron'
import { electronAPI } from '@electron-toolkit/preload'

// Custom APIs for renderer（给渲染进程自定义的API）
const api = {}

// Use `contextBridge` APIs to expose Electron APIs to
// renderer only if context isolation is enabled, otherwise
// just add to the DOM global.
// 如果启用了上下文隔离，就要使用桥接, 否则直接添加到全局dom
// https://www.electronjs.org/zh/docs/latest/tutorial/context-isolation
if (process.contextIsolated) {
  try {
    contextBridge.exposeInMainWorld('electron', electronAPI)
    contextBridge.exposeInMainWorld('api', api)
  } catch (error) {
    console.error(error)
  }
} else {
  // @ts-ignore (define in dts)
  window.electron = electronAPI
  // @ts-ignore (define in dts)
  window.api = api
}
